iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 11
0
自我挑戰組

人生第一次的SideProject系列 第 11

[Day 11 ] 擲骰功能實作-需求分析

  • 分享至 

  • xImage
  •  

吸取之前的經驗,執行之前要來先打好計畫,雖然計劃趕不上變化,不過有個計劃還是比較能找到方向,這邊就來分析一下擲骰在遊戲中的用途與實際用法。

骰子在遊戲中的功能是下達命運的審判......嗯我是說給出隨機的點數。

依照現實中骰子的邏輯:

最低點數 = 骰數
最高點數 = 單骰最高點數 * 骰數

因此在CoC中常見的D3、D6、D10、D100,擲骰結果會是:

N面骰 骰數 範圍
3 1 1~3
3 2 2~6
6 1 1~6
6 2 2~12
6 3 3~18
10 1 1~10
10 2 2~20
100 1 1~100

之前不小心把3D6的範圍寫成1~18,就是沒把實際的邏輯推導清楚啊(汗)

再來是實際運用的時機:

  1. 製作角色卡時決定狀態數值
  2. 狀態判定、使用技能判定
  3. 數值增減

角色卡部分,已先寫好了載入時便給出預設隨機數值,這部分考慮之後改成點擊「狀態重置」之類的按鈕後再跑出值來,遊玩體驗大概會比較好。

綜合來說,骰子功能需求如下:

  • 狀態、技能通過與否判定
  • 跑團時給出某項隨機值

第一項的判定多是 1D100 的狀況,因此預計會在各項狀態數值與技能旁邊直接做一個 1D100 的點擊擲骰元件,得到 random 值後按照目前技能值判定顯示成功或失敗。其他狀況的擲骰則全部歸納在另一個地方,需要時就去點面數與骰數,然後進行擲骰。

需求分析大致如上,明天起就來實作擲骰吧。

= = = = =

你今天的努力,
是否有跟未來的夢想
同一個等級?


上一篇
[Day 10 ] 技能配點功能實作(三)
下一篇
[Day 12 ] 擲骰功能實作(一)
系列文
人生第一次的SideProject33
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言